// Pathfinder.h

#pragma once
#include <queue>
#include <stddef.h>

using namespace System;

namespace Pathfinder {




	public ref class Tile
	{
	public:
		int x;
		int y;
		int endX;
		int endY;
		int mCosts;
		int movements;
		int endMovements;
		Tile^ parent;
	public:
		Tile(int xwert, int ywert, int endX, int endY, int m);
		virtual bool Equals(Object^ o) override;
		void berechnen(int endX, int endY);
		void setzeParent(Tile^ p);
	};

	public ref class FindBestPath
	{

	public:
		FindBestPath();
		array<Tile^>^  findPath(array<array<bool> ^> ^ map, int startX, int startY, int endX, int endY);
	};
}
